/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package cl.orientesalud.dao.impl;

import cl.orientesalud.dao.Dao;
import cl.orientesalud.dao.PacienteDao;
import cl.orientesalud.dominio.Paciente;
import cl.orientesalud.util.OrienteLog;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.logging.Level;
import org.apache.log4j.Logger;

/**
 *
 * @author nicolas
 */
public class PacienteDaoImpl extends Dao implements PacienteDao{
     Logger logger=OrienteLog.obtenerLogger(PacienteDaoImpl.class);
    @Override
    public Paciente obtenerPaciente(Paciente paciente) throws Exception{
       logger.debug("obteniendo paciente:"+paciente);
       Paciente retorno=null;
       PreparedStatement pstmt=null;
       ResultSet rs=null;
       String consulta="SELECT pac_rut,"
               + "      pac_nombre,"
               + "      pac_appat,"
               + "      pac_apmat,"
               + "      pac_direccion,"
               + "      pac_telefono "
               + "from paciente "
               + "where pac_rut=?";
        try {
            pstmt = conexion.preparedStatement(consulta);
            pstmt.setString(1, paciente.getRut());
            rs=pstmt.executeQuery();
            if(rs.next()){
                retorno=new Paciente();
                retorno.setRut(rs.getString("pac_rut"));
                retorno.setNombre(rs.getString("pac_nombre"));
                retorno.setApellidoPaterno(rs.getString("pac_appat"));
                retorno.setApellidoMaterno(rs.getString("pac_apmat"));
                retorno.setDireccion(rs.getString("pac_direccion"));
                retorno.setTelefono(rs.getString("pac_telefono"));
                
            }
        } catch (SQLException ex) {
            logger.error("Error:"+ex.getMessage());
            throw new Exception("Error en el sistema");
        }
       return retorno;
    }
    
}
